package xin.yangshuai.basic01.gof23.builder;

public interface DatabaseSqlBuilder {

    /**
     * 数据库类型
     *
     * @return
     */
    DatabaseSqlBuilder database();

    /**
     * 表名
     *
     * @param tableName
     * @return
     */
    DatabaseSqlBuilder tableName(String tableName);

    /**
     * 每页条数
     *
     * @param pageSize
     * @return
     */
    DatabaseSqlBuilder pageSize(Integer pageSize);

    /**
     * 偏移量
     *
     * @param offset
     * @return
     */
    DatabaseSqlBuilder offset(Integer offset);

    /**
     * sql
     *
     * @return
     */
    DatabaseSqlBuilder sql();

    /**
     * 生成DatabaseSql
     *
     * @return
     */
    DatabaseSql build();
}
